// 枚举 
// 策略模式
const ResultCodeEnumConst = {
    SUCCESS: ResultCodeEnum(true, 20000,"成功"),
    UNKNOWN_REASON: ResultCodeEnum(false, 20001, "未知错误"),
    BAD_SQL_GRAMMAR: ResultCodeEnum(false, 21001, "sql语法错误"),
    JSON_PARSE_ERROR: ResultCodeEnum(false, 21002, "json解析异常"),
    PARAM_ERROR: ResultCodeEnum(false, 21003, "参数不正确"),
    FILE_UPLOAD_ERROR: ResultCodeEnum(false, 21004, "文件上传错误"),
    FILE_DELETE_ERROR: ResultCodeEnum(false, 21005, "文件刪除错误"),
    EXCEL_DATA_IMPORT_ERROR: ResultCodeEnum(false, 21006, "Excel数据导入错误"),
    VIDEO_UPLOAD_ALIYUN_ERROR: ResultCodeEnum(false, 22001, "视频上传至阿里云失败"),
    VIDEO_UPLOAD_TOMCAT_ERROR: ResultCodeEnum(false, 22002, "视频上传至业务服务器失败"),
    VIDEO_DELETE_ALIYUN_ERROR: ResultCodeEnum(false, 22003, "阿里云视频文件删除失败"),
    FETCH_VIDEO_UPLOADAUTH_ERROR: ResultCodeEnum(false, 22004, "获取上传地址和凭证失败"),
    REFRESH_VIDEO_UPLOADAUTH_ERROR: ResultCodeEnum(false, 22005, "刷新上传地址和凭证失败"),
    FETCH_PLAYAUTH_ERROR: ResultCodeEnum(false, 22006, "获取播放凭证失败"),
    URL_ENCODE_ERROR: ResultCodeEnum(false, 23001, "URL编码失败"),
    ILLEGAL_CALLBACK_REQUEST_ERROR: ResultCodeEnum(false, 23002, "非法回调请求"),
    FETCH_ACCESSTOKEN_FAILD: ResultCodeEnum(false, 23003, "获取accessToken失败"),
    FETCH_USERINFO_ERROR: ResultCodeEnum(false, 23004, "获取用户信息失败"),
    LOGIN_ERROR: ResultCodeEnum(false, 23005, "登录失败"),

    COMMENT_EMPTY: ResultCodeEnum(false, 24006, "评论内容必须填写"),

    PAY_RUN: ResultCodeEnum(false, 25000, "支付中"),
    PAY_UNIFIEDORDER_ERROR: ResultCodeEnum(false, 25001, "统一下单错误"),
    PAY_ORDERQUERY_ERROR: ResultCodeEnum(false, 25002, "查询支付结果错误"),
    ORDER_EXIST_ERROR: ResultCodeEnum(false, 25003, "课程已购买"),
    GATEWAY_ERROR: ResultCodeEnum(false, 26000, "服务不能访问"),
    CODE_ERROR: ResultCodeEnum(false, 28000, "验证码错误"),
    LOGIN_PHONE_ERROR: ResultCodeEnum(false, 28009, "手机号码不正确"),
    LOGIN_MOBILE_ERROR: ResultCodeEnum(false, 28001, "账号不正确"),
    LOGIN_PASSWORD_ERROR: ResultCodeEnum(false, 28008, "密码不正确"),
    LOGIN_DISABLED_ERROR: ResultCodeEnum(false, 28002, "该用户已被禁用"),
    REGISTER_MOBLE_ERROR: ResultCodeEnum(false, 28003, "手机号已被注册"),
    LOGIN_AUTH: ResultCodeEnum(false, 28004, "需要登录"),
    LOGIN_ACL: ResultCodeEnum(false, 28005, "没有权限"),
    SMS_SEND_ERROR: ResultCodeEnum(false, 28006, "短信发送失败"),
    SMS_SEND_ERROR_BUSINESS_LIMIT_CONTROL: ResultCodeEnum(false, 28007, "短信发送过于频繁")
}

function ResultCodeEnum(success, status, message){
    return {
        success, status, message
    }
}
module.exports = {
    ResultCodeEnumConst
}